
lib/libmyc.so:     file format elf64-x86-64


Disassembly of section .init:

0000000000000788 <_init>:
 788:	48 83 ec 08          	sub    $0x8,%rsp
 78c:	48 8b 05 4d 08 20 00 	mov    0x20084d(%rip),%rax        # 200fe0 <__gmon_start__>
 793:	48 85 c0             	test   %rax,%rax
 796:	74 05                	je     79d <_init+0x15>
 798:	e8 63 00 00 00       	callq  800 <__gmon_start__@plt>
 79d:	48 83 c4 08          	add    $0x8,%rsp
 7a1:	c3                   	retq   

Disassembly of section .plt:

00000000000007b0 <.plt>:
 7b0:	ff 35 52 08 20 00    	pushq  0x200852(%rip)        # 201008 <_GLOBAL_OFFSET_TABLE_+0x8>
 7b6:	ff 25 54 08 20 00    	jmpq   *0x200854(%rip)        # 201010 <_GLOBAL_OFFSET_TABLE_+0x10>
 7bc:	0f 1f 40 00          	nopl   0x0(%rax)

00000000000007c0 <free@plt>:
 7c0:	ff 25 52 08 20 00    	jmpq   *0x200852(%rip)        # 201018 <free@GLIBC_2.2.5>
 7c6:	68 00 00 00 00       	pushq  $0x0
 7cb:	e9 e0 ff ff ff       	jmpq   7b0 <.plt>

00000000000007d0 <write@plt>:
 7d0:	ff 25 4a 08 20 00    	jmpq   *0x20084a(%rip)        # 201020 <write@GLIBC_2.2.5>
 7d6:	68 01 00 00 00       	pushq  $0x1
 7db:	e9 d0 ff ff ff       	jmpq   7b0 <.plt>

00000000000007e0 <close@plt>:
 7e0:	ff 25 42 08 20 00    	jmpq   *0x200842(%rip)        # 201028 <close@GLIBC_2.2.5>
 7e6:	68 02 00 00 00       	pushq  $0x2
 7eb:	e9 c0 ff ff ff       	jmpq   7b0 <.plt>

00000000000007f0 <strcmp@plt>:
 7f0:	ff 25 3a 08 20 00    	jmpq   *0x20083a(%rip)        # 201030 <strcmp@GLIBC_2.2.5>
 7f6:	68 03 00 00 00       	pushq  $0x3
 7fb:	e9 b0 ff ff ff       	jmpq   7b0 <.plt>

0000000000000800 <__gmon_start__@plt>:
 800:	ff 25 32 08 20 00    	jmpq   *0x200832(%rip)        # 201038 <__gmon_start__>
 806:	68 04 00 00 00       	pushq  $0x4
 80b:	e9 a0 ff ff ff       	jmpq   7b0 <.plt>

0000000000000810 <memcpy@plt>:
 810:	ff 25 2a 08 20 00    	jmpq   *0x20082a(%rip)        # 201040 <memcpy@GLIBC_2.14>
 816:	68 05 00 00 00       	pushq  $0x5
 81b:	e9 90 ff ff ff       	jmpq   7b0 <.plt>

0000000000000820 <malloc@plt>:
 820:	ff 25 22 08 20 00    	jmpq   *0x200822(%rip)        # 201048 <malloc@GLIBC_2.2.5>
 826:	68 06 00 00 00       	pushq  $0x6
 82b:	e9 80 ff ff ff       	jmpq   7b0 <.plt>

0000000000000830 <open@plt>:
 830:	ff 25 1a 08 20 00    	jmpq   *0x20081a(%rip)        # 201050 <open@GLIBC_2.2.5>
 836:	68 07 00 00 00       	pushq  $0x7
 83b:	e9 70 ff ff ff       	jmpq   7b0 <.plt>

0000000000000840 <my_fflush@plt>:
 840:	ff 25 12 08 20 00    	jmpq   *0x200812(%rip)        # 201058 <my_fflush@@Base+0x2005b5>
 846:	68 08 00 00 00       	pushq  $0x8
 84b:	e9 60 ff ff ff       	jmpq   7b0 <.plt>

0000000000000850 <__cxa_finalize@plt>:
 850:	ff 25 0a 08 20 00    	jmpq   *0x20080a(%rip)        # 201060 <__cxa_finalize@GLIBC_2.2.5>
 856:	68 09 00 00 00       	pushq  $0x9
 85b:	e9 50 ff ff ff       	jmpq   7b0 <.plt>

Disassembly of section .text:

0000000000000860 <deregister_tm_clones>:
 860:	48 8d 05 08 08 20 00 	lea    0x200808(%rip),%rax        # 20106f <_edata+0x7>
 867:	48 8d 3d fa 07 20 00 	lea    0x2007fa(%rip),%rdi        # 201068 <_edata>
 86e:	55                   	push   %rbp
 86f:	48 29 f8             	sub    %rdi,%rax
 872:	48 89 e5             	mov    %rsp,%rbp
 875:	48 83 f8 0e          	cmp    $0xe,%rax
 879:	77 02                	ja     87d <deregister_tm_clones+0x1d>
 87b:	5d                   	pop    %rbp
 87c:	c3                   	retq   
 87d:	48 8b 05 54 07 20 00 	mov    0x200754(%rip),%rax        # 200fd8 <_ITM_deregisterTMCloneTable>
 884:	48 85 c0             	test   %rax,%rax
 887:	74 f2                	je     87b <deregister_tm_clones+0x1b>
 889:	5d                   	pop    %rbp
 88a:	ff e0                	jmpq   *%rax
 88c:	0f 1f 40 00          	nopl   0x0(%rax)

0000000000000890 <register_tm_clones>:
 890:	48 8d 05 d1 07 20 00 	lea    0x2007d1(%rip),%rax        # 201068 <_edata>
 897:	48 8d 3d ca 07 20 00 	lea    0x2007ca(%rip),%rdi        # 201068 <_edata>
 89e:	55                   	push   %rbp
 89f:	48 29 f8             	sub    %rdi,%rax
 8a2:	48 89 e5             	mov    %rsp,%rbp
 8a5:	48 c1 f8 03          	sar    $0x3,%rax
 8a9:	48 89 c2             	mov    %rax,%rdx
 8ac:	48 c1 ea 3f          	shr    $0x3f,%rdx
 8b0:	48 01 d0             	add    %rdx,%rax
 8b3:	48 d1 f8             	sar    %rax
 8b6:	75 02                	jne    8ba <register_tm_clones+0x2a>
 8b8:	5d                   	pop    %rbp
 8b9:	c3                   	retq   
 8ba:	48 8b 15 2f 07 20 00 	mov    0x20072f(%rip),%rdx        # 200ff0 <_ITM_registerTMCloneTable>
 8c1:	48 85 d2             	test   %rdx,%rdx
 8c4:	74 f2                	je     8b8 <register_tm_clones+0x28>
 8c6:	5d                   	pop    %rbp
 8c7:	48 89 c6             	mov    %rax,%rsi
 8ca:	ff e2                	jmpq   *%rdx
 8cc:	0f 1f 40 00          	nopl   0x0(%rax)

00000000000008d0 <__do_global_dtors_aux>:
 8d0:	80 3d 91 07 20 00 00 	cmpb   $0x0,0x200791(%rip)        # 201068 <_edata>
 8d7:	75 27                	jne    900 <__do_global_dtors_aux+0x30>
 8d9:	48 83 3d 17 07 20 00 	cmpq   $0x0,0x200717(%rip)        # 200ff8 <__cxa_finalize@GLIBC_2.2.5>
 8e0:	00 
 8e1:	55                   	push   %rbp
 8e2:	48 89 e5             	mov    %rsp,%rbp
 8e5:	74 0c                	je     8f3 <__do_global_dtors_aux+0x23>
 8e7:	48 8d 3d 22 05 20 00 	lea    0x200522(%rip),%rdi        # 200e10 <__dso_handle>
 8ee:	e8 5d ff ff ff       	callq  850 <__cxa_finalize@plt>
 8f3:	e8 68 ff ff ff       	callq  860 <deregister_tm_clones>
 8f8:	5d                   	pop    %rbp
 8f9:	c6 05 68 07 20 00 01 	movb   $0x1,0x200768(%rip)        # 201068 <_edata>
 900:	f3 c3                	repz retq 
 902:	0f 1f 40 00          	nopl   0x0(%rax)
 906:	66 2e 0f 1f 84 00 00 	nopw   %cs:0x0(%rax,%rax,1)
 90d:	00 00 00 

0000000000000910 <frame_dummy>:
 910:	48 83 3d f0 04 20 00 	cmpq   $0x0,0x2004f0(%rip)        # 200e08 <__JCR_END__>
 917:	00 
 918:	74 26                	je     940 <frame_dummy+0x30>
 91a:	48 8b 05 c7 06 20 00 	mov    0x2006c7(%rip),%rax        # 200fe8 <_Jv_RegisterClasses>
 921:	48 85 c0             	test   %rax,%rax
 924:	74 1a                	je     940 <frame_dummy+0x30>
 926:	55                   	push   %rbp
 927:	48 8d 3d da 04 20 00 	lea    0x2004da(%rip),%rdi        # 200e08 <__JCR_END__>
 92e:	48 89 e5             	mov    %rsp,%rbp
 931:	ff d0                	callq  *%rax
 933:	5d                   	pop    %rbp
 934:	e9 57 ff ff ff       	jmpq   890 <register_tm_clones>
 939:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
 940:	e9 4b ff ff ff       	jmpq   890 <register_tm_clones>

0000000000000945 <Add>:
 945:	55                   	push   %rbp
 946:	48 89 e5             	mov    %rsp,%rbp
 949:	89 7d fc             	mov    %edi,-0x4(%rbp)
 94c:	89 75 f8             	mov    %esi,-0x8(%rbp)
 94f:	8b 45 f8             	mov    -0x8(%rbp),%eax
 952:	8b 55 fc             	mov    -0x4(%rbp),%edx
 955:	01 d0                	add    %edx,%eax
 957:	5d                   	pop    %rbp
 958:	c3                   	retq   

0000000000000959 <Sub>:
 959:	55                   	push   %rbp
 95a:	48 89 e5             	mov    %rsp,%rbp
 95d:	89 7d fc             	mov    %edi,-0x4(%rbp)
 960:	89 75 f8             	mov    %esi,-0x8(%rbp)
 963:	8b 45 f8             	mov    -0x8(%rbp),%eax
 966:	8b 55 fc             	mov    -0x4(%rbp),%edx
 969:	29 c2                	sub    %eax,%edx
 96b:	89 d0                	mov    %edx,%eax
 96d:	5d                   	pop    %rbp
 96e:	c3                   	retq   

000000000000096f <my_fopen>:
 96f:	55                   	push   %rbp
 970:	48 89 e5             	mov    %rsp,%rbp
 973:	48 83 ec 30          	sub    $0x30,%rsp
 977:	48 89 7d d8          	mov    %rdi,-0x28(%rbp)
 97b:	48 89 75 d0          	mov    %rsi,-0x30(%rbp)
 97f:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%rbp)
 986:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%rbp)
 98d:	c7 45 f0 b6 01 00 00 	movl   $0x1b6,-0x10(%rbp)
 994:	48 8b 45 d0          	mov    -0x30(%rbp),%rax
 998:	48 8d 35 1a 02 00 00 	lea    0x21a(%rip),%rsi        # bb9 <_fini+0x9>
 99f:	48 89 c7             	mov    %rax,%rdi
 9a2:	e8 49 fe ff ff       	callq  7f0 <strcmp@plt>
 9a7:	85 c0                	test   %eax,%eax
 9a9:	75 09                	jne    9b4 <my_fopen+0x45>
 9ab:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%rbp)
 9b2:	eb 4c                	jmp    a00 <my_fopen+0x91>
 9b4:	48 8b 45 d0          	mov    -0x30(%rbp),%rax
 9b8:	48 8d 35 fc 01 00 00 	lea    0x1fc(%rip),%rsi        # bbb <_fini+0xb>
 9bf:	48 89 c7             	mov    %rax,%rdi
 9c2:	e8 29 fe ff ff       	callq  7f0 <strcmp@plt>
 9c7:	85 c0                	test   %eax,%eax
 9c9:	75 10                	jne    9db <my_fopen+0x6c>
 9cb:	c7 45 fc 41 02 00 00 	movl   $0x241,-0x4(%rbp)
 9d2:	c7 45 f8 01 00 00 00 	movl   $0x1,-0x8(%rbp)
 9d9:	eb 25                	jmp    a00 <my_fopen+0x91>
 9db:	48 8b 45 d0          	mov    -0x30(%rbp),%rax
 9df:	48 8d 35 d7 01 00 00 	lea    0x1d7(%rip),%rsi        # bbd <_fini+0xd>
 9e6:	48 89 c7             	mov    %rax,%rdi
 9e9:	e8 02 fe ff ff       	callq  7f0 <strcmp@plt>
 9ee:	85 c0                	test   %eax,%eax
 9f0:	75 0e                	jne    a00 <my_fopen+0x91>
 9f2:	c7 45 fc 41 04 00 00 	movl   $0x441,-0x4(%rbp)
 9f9:	c7 45 f8 01 00 00 00 	movl   $0x1,-0x8(%rbp)
 a00:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%rbp)
 a07:	83 7d f8 00          	cmpl   $0x0,-0x8(%rbp)
 a0b:	74 1e                	je     a2b <my_fopen+0xbc>
 a0d:	8b 55 f0             	mov    -0x10(%rbp),%edx
 a10:	8b 4d fc             	mov    -0x4(%rbp),%ecx
 a13:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
 a17:	89 ce                	mov    %ecx,%esi
 a19:	48 89 c7             	mov    %rax,%rdi
 a1c:	b8 00 00 00 00       	mov    $0x0,%eax
 a21:	e8 0a fe ff ff       	callq  830 <open@plt>
 a26:	89 45 f4             	mov    %eax,-0xc(%rbp)
 a29:	eb 19                	jmp    a44 <my_fopen+0xd5>
 a2b:	8b 55 fc             	mov    -0x4(%rbp),%edx
 a2e:	48 8b 45 d8          	mov    -0x28(%rbp),%rax
 a32:	89 d6                	mov    %edx,%esi
 a34:	48 89 c7             	mov    %rax,%rdi
 a37:	b8 00 00 00 00       	mov    $0x0,%eax
 a3c:	e8 ef fd ff ff       	callq  830 <open@plt>
 a41:	89 45 f4             	mov    %eax,-0xc(%rbp)
 a44:	83 7d f4 00          	cmpl   $0x0,-0xc(%rbp)
 a48:	79 07                	jns    a51 <my_fopen+0xe2>
 a4a:	b8 00 00 00 00       	mov    $0x0,%eax
 a4f:	eb 50                	jmp    aa1 <my_fopen+0x132>
 a51:	bf 10 04 00 00       	mov    $0x410,%edi
 a56:	e8 c5 fd ff ff       	callq  820 <malloc@plt>
 a5b:	48 89 45 e8          	mov    %rax,-0x18(%rbp)
 a5f:	48 83 7d e8 00       	cmpq   $0x0,-0x18(%rbp)
 a64:	75 07                	jne    a6d <my_fopen+0xfe>
 a66:	b8 00 00 00 00       	mov    $0x0,%eax
 a6b:	eb 34                	jmp    aa1 <my_fopen+0x132>
 a6d:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
 a71:	8b 55 f4             	mov    -0xc(%rbp),%edx
 a74:	89 50 04             	mov    %edx,0x4(%rax)
 a77:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
 a7b:	c7 00 02 00 00 00    	movl   $0x2,(%rax)
 a81:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
 a85:	c7 80 08 04 00 00 00 	movl   $0x400,0x408(%rax)
 a8c:	04 00 00 
 a8f:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
 a93:	c7 80 0c 04 00 00 00 	movl   $0x0,0x40c(%rax)
 a9a:	00 00 00 
 a9d:	48 8b 45 e8          	mov    -0x18(%rbp),%rax
 aa1:	c9                   	leaveq 
 aa2:	c3                   	retq   

0000000000000aa3 <my_fflush>:
 aa3:	55                   	push   %rbp
 aa4:	48 89 e5             	mov    %rsp,%rbp
 aa7:	48 83 ec 10          	sub    $0x10,%rsp
 aab:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
 aaf:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
 ab3:	8b 80 0c 04 00 00    	mov    0x40c(%rax),%eax
 ab9:	48 63 d0             	movslq %eax,%rdx
 abc:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
 ac0:	48 8d 48 08          	lea    0x8(%rax),%rcx
 ac4:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
 ac8:	8b 40 04             	mov    0x4(%rax),%eax
 acb:	48 89 ce             	mov    %rcx,%rsi
 ace:	89 c7                	mov    %eax,%edi
 ad0:	e8 fb fc ff ff       	callq  7d0 <write@plt>
 ad5:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
 ad9:	c7 80 0c 04 00 00 00 	movl   $0x0,0x40c(%rax)
 ae0:	00 00 00 
 ae3:	c9                   	leaveq 
 ae4:	c3                   	retq   

0000000000000ae5 <my_fwrite>:
 ae5:	55                   	push   %rbp
 ae6:	48 89 e5             	mov    %rsp,%rbp
 ae9:	48 83 ec 20          	sub    $0x20,%rsp
 aed:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
 af1:	48 89 75 f0          	mov    %rsi,-0x10(%rbp)
 af5:	89 55 ec             	mov    %edx,-0x14(%rbp)
 af8:	8b 45 ec             	mov    -0x14(%rbp),%eax
 afb:	48 63 d0             	movslq %eax,%rdx
 afe:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
 b02:	8b 80 0c 04 00 00    	mov    0x40c(%rax),%eax
 b08:	48 63 c8             	movslq %eax,%rcx
 b0b:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
 b0f:	48 01 c8             	add    %rcx,%rax
 b12:	48 8d 48 08          	lea    0x8(%rax),%rcx
 b16:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
 b1a:	48 89 c6             	mov    %rax,%rsi
 b1d:	48 89 cf             	mov    %rcx,%rdi
 b20:	e8 eb fc ff ff       	callq  810 <memcpy@plt>
 b25:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
 b29:	8b 90 0c 04 00 00    	mov    0x40c(%rax),%edx
 b2f:	8b 45 ec             	mov    -0x14(%rbp),%eax
 b32:	01 c2                	add    %eax,%edx
 b34:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
 b38:	89 90 0c 04 00 00    	mov    %edx,0x40c(%rax)
 b3e:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
 b42:	8b 00                	mov    (%rax),%eax
 b44:	83 e0 02             	and    $0x2,%eax
 b47:	85 c0                	test   %eax,%eax
 b49:	74 28                	je     b73 <my_fwrite+0x8e>
 b4b:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
 b4f:	8b 80 0c 04 00 00    	mov    0x40c(%rax),%eax
 b55:	83 e8 01             	sub    $0x1,%eax
 b58:	48 8b 55 f8          	mov    -0x8(%rbp),%rdx
 b5c:	48 98                	cltq   
 b5e:	0f b6 44 02 08       	movzbl 0x8(%rdx,%rax,1),%eax
 b63:	3c 0a                	cmp    $0xa,%al
 b65:	75 0c                	jne    b73 <my_fwrite+0x8e>
 b67:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
 b6b:	48 89 c7             	mov    %rax,%rdi
 b6e:	e8 cd fc ff ff       	callq  840 <my_fflush@plt>
 b73:	8b 45 ec             	mov    -0x14(%rbp),%eax
 b76:	48 98                	cltq   
 b78:	c9                   	leaveq 
 b79:	c3                   	retq   

0000000000000b7a <my_fclose>:
 b7a:	55                   	push   %rbp
 b7b:	48 89 e5             	mov    %rsp,%rbp
 b7e:	48 83 ec 10          	sub    $0x10,%rsp
 b82:	48 89 7d f8          	mov    %rdi,-0x8(%rbp)
 b86:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
 b8a:	48 89 c7             	mov    %rax,%rdi
 b8d:	e8 ae fc ff ff       	callq  840 <my_fflush@plt>
 b92:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
 b96:	8b 40 04             	mov    0x4(%rax),%eax
 b99:	89 c7                	mov    %eax,%edi
 b9b:	e8 40 fc ff ff       	callq  7e0 <close@plt>
 ba0:	48 8b 45 f8          	mov    -0x8(%rbp),%rax
 ba4:	48 89 c7             	mov    %rax,%rdi
 ba7:	e8 14 fc ff ff       	callq  7c0 <free@plt>
 bac:	c9                   	leaveq 
 bad:	c3                   	retq   

Disassembly of section .fini:

0000000000000bb0 <_fini>:
 bb0:	48 83 ec 08          	sub    $0x8,%rsp
 bb4:	48 83 c4 08          	add    $0x8,%rsp
 bb8:	c3                   	retq   
